package com.xiaoshuidi.cloud.module.contract.controller.admin.bill.vo;

import com.baomidou.mybatisplus.annotation.TableId;
import com.xiaoshuidi.cloud.module.contract.controller.admin.bill.vo.orderFees.OrderFeesRespVO;
import com.xiaoshuidi.cloud.module.contract.enums.bill.OrderPayStatusEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.List;

/**
 * 账单明细
 */
@Data
public class OrderDetaillAndOrderFeeVo {

    /**
     * 账单id
     */
    @TableId
    private Long id;
    /**
     * 序号
     */
    private Long num;
    /**
     * 总期数
     */
    private Integer totalNum;
    /**
     * 公寓id
     */
    private Long apartmentId;
    /**
     * 公寓名称
     */
    private String apartmentName;

    /**
     * 房间id
     */
    private Long roomId;

    /**
     * 房间名称
     */
    private String roomName;
    /**
     * 此订单开始时间
     */
    private LocalDate startTime;

    /**
     * 此订单结束时间
     */
    private LocalDate endTime;

    /**
     * 账单总金额
     */
    private BigDecimal totalAmount;
    /**
     * 已支付金额
     */
    private BigDecimal paidRentUtilities;
    /**
    * 未支付金额
    * */
    private BigDecimal unpaid;
    /**
     * 未支付金额
     * */
    private BigDecimal discountAmount;

    /**
     * 支付状态(unpaid 待支付 |payment 已支付|part  部分支付),
     */
    private String payStatus;

    /**
     * 此订单支付时间
     */
    private LocalDate oughtPayTime;

    /**
     * 租金应付金额
     */
    private BigDecimal rentAmount;
    /**
     * 优惠券优惠金额
     */
    private BigDecimal couponDiscount;

    /**
     * 明细
     */
    @Schema(description = "明细")
    List<OrderFeesRespVO>  orderFeesList;
}
